<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core">
<ui:composition template="/common/template.xhtml">
	<ui:define name="headSection">
	</ui:define>
	<ui:define name="pageContent">
		<div id="scroolTable">
			<!-- scroll bar -->
			<h:form>
				<!-- за Калин - избрания ред ще има клас = "selectedRow", неизбраните = "notSelectedRow" -->
				<h:dataTable rows="#{configurationProperties.getPageSize()}"
					value="#{aktualiziraneNaAvtoserviz.spisukAvtoservizi}" first="0"
					var="curr"
					rowClasses="#{aktualiziraneNaAvtoserviz.rowStyleClasses}">
					<h:column>
						<f:facet name="header">Наименование</f:facet>
					#{curr.name}
				</h:column>
					<h:column>
						<f:facet name="header">Населено място</f:facet>
					#{curr.addressCity}
				</h:column>
					<h:column>
						<f:facet name="header">Адрес</f:facet>
					#{curr.addressLine}
				</h:column>
					<h:column>
						<f:facet name="header">Телефонен номер</f:facet>
					#{curr.phoneNumber}
				</h:column>
					<h:column>
						<f:facet name="header">Електронна поща</f:facet>
					#{curr.mail}
				</h:column>
					<h:column>
						<f:facet name="header">Промени</f:facet>
						<h:commandButton
						class="inTableButton"
							action="#{aktualiziraneNaAvtoserviz.selectRow(curr)}"
							value="Промени" />
					</h:column>
					<h:column rendered="#{aktualiziraneNaAvtoserviz.choosingAllowed}">
						<f:facet name="header">Избери</f:facet>
						<h:commandLink
							action="#{aktualiziraneNaAvtoserviz.chooseAutoservice(curr)}"
							value="Избери" />
					</h:column>
					<f:facet name="footer">
						<!-- предишна страница -->
						<h:commandLink
							disabled="#{aktualiziraneNaAvtoserviz.page - 1 lt 0}"
							action="#{aktualiziraneNaAvtoserviz.setPage(aktualiziraneNaAvtoserviz.page - 1)}"
							value="&lt;&lt;" />
						<h:outputText value=" " />
						<!-- други страници -->
						<ui:repeat value="#{aktualiziraneNaAvtoserviz.pagesList}"
							var="currPage">
							<h:commandLink
								disabled="#{aktualiziraneNaAvtoserviz.getPage() eq currPage.intValue() - 1}"
								action="#{aktualiziraneNaAvtoserviz.setPage(currPage.intValue() - 1)}"
								value="#{currPage}" />
							<h:outputText value=" " />
						</ui:repeat>
						<!-- следваща страница -->
						<h:commandLink
							disabled="#{aktualiziraneNaAvtoserviz.page + 1 ge aktualiziraneNaAvtoserviz.pagesCount}"
							action="#{aktualiziraneNaAvtoserviz.setPage(aktualiziraneNaAvtoserviz.page + 1)}"
							value="&gt;&gt;" />
					</f:facet>
				</h:dataTable>
			</h:form>
		</div>
		<h:form>
			<table class="mainTable">
				<tr>
					<td><h:outputLabel value="Наименование*">
							<br />
							<h:inputText id="name" value="#{aktualiziraneNaAvtoserviz.name}"
								maxlength="30" required="true"
								requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}"
								validatorMessage="Въведеното име съдържа некоректни символи или е прекалено късо.">
								<f:validateRegex pattern="^\w{2,50}$" />
							</h:inputText>
							<br/>
							<h:message for="name" class="errorMsg" />
						</h:outputLabel></td>
					<td><h:outputLabel value="Населено място*">
							<br />
							<h:inputText id="city"
								value="#{aktualiziraneNaAvtoserviz.addressCity}" maxlength="30"
								required="true" requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}" 
								validatorMessage="Въведеното населено място съдържа некоректни символи или е прекалено късо.">
								<f:validateRegex pattern="^[a-zA-Zа-яА-Я]{3,30}$" />
							</h:inputText>
							<br/>
							<h:message for="city" class="errorMsg" />
						</h:outputLabel></td>
				</tr>
				<tr>
					<td><h:outputLabel value="Адрес*">
							<br />
							<h:inputText id="address"
								value="#{aktualiziraneNaAvtoserviz.addressLine}" maxlength="100"
								required="true" requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}" 
								validatorMessage="Въведеният адрес е прекалено къс.">
								<f:validateRegex pattern="^.{5,100}$" />
							</h:inputText>
							<br/>
							<h:message for="address" class="errorMsg" />
						</h:outputLabel></td>
					<td><h:outputLabel value="Телефонен номер*">
							<br />
							<h:inputText id="phone"
								value="#{aktualiziraneNaAvtoserviz.phoneNumber}" maxlength="15"
								required="true" requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}"
								validatorMessage="Телефонният номер е невалиден. Примери: +359885609456, 082860450">
								<f:validateRegex pattern="^[+]?[0-9]{6,14}$" />
							</h:inputText>
							<br/>
							<h:message for="phone" class="errorMsg" />
						</h:outputLabel></td>
				</tr>
				<tr>
					<td><h:outputLabel value="Електронна поща*">
							<br />
							<h:inputText id="mail" value="#{aktualiziraneNaAvtoserviz.mail}"
								maxlength="50" required="true"
								requiredMessage="задължително поле!"
								validatorMessage="Електронната поща е невалидна. Пример: potrbitel@mail.bg">
								<f:validateRegex
									pattern="^[a-zA-Z][a-zA-Z0-9._%+-]*@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,4}$" />
							</h:inputText>
							<br/>
							<h:message for="mail" class="errorMsg" />
						</h:outputLabel></td>
					<td><h:outputLabel value="Номер на банковата сметка*">
							<br />
							<h:inputText id="iban"
								value="#{aktualiziraneNaAvtoserviz.IBANNumber}" maxlength="30"
								required="true" requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}"
								validatorMessage="Позволени символи за номер на сметка са главни латински букви и цифри. От 10 до 30 символа.">
								<f:validateRegex pattern="^[A-Z0-9]{10,30}$" />
							</h:inputText>
							<br/>
							<h:message for="iban" class="errorMsg" />
						</h:outputLabel></td>
				</tr>
				<tr>
					<td><h:outputLabel value="Банков код*">
							<br />
							<h:inputText id="swiftcode"
								value="#{aktualiziraneNaAvtoserviz.SWIFTCode}" maxlength="20"
								required="true" requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}"
								validatorMessage="Позволени символи за банков код са главни латински букви и цифри. От 8 до 11 символа.">
								<f:validateRegex pattern="^[A-Z0-9]{8,11}$" />
							</h:inputText>
							<br/>
							<h:message for="swiftcode" class="errorMsg" />
						</h:outputLabel></td>
					<td><h:outputLabel value="ДДС номер">
							<br />
							<h:inputText id="vat"
								value="#{aktualiziraneNaAvtoserviz.VATNumber}" maxlength="11"
								required="false"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}"
								validatorMessage="ДДС номерът се състои от 11 символа - главни латински букви и цифри.">
								<f:validateRegex pattern="^[A-Z0-9]{11}$" />
							</h:inputText>
							<br/>
							<h:message for="vat" class="errorMsg" />
						</h:outputLabel></td>
				</tr>
				<tr>
					<td><h:outputLabel
							value="Единен идентификационен код (ЕИК)*">
							<br />
							<h:inputText id="regnumber"
								value="#{aktualiziraneNaAvtoserviz.registrationNumber}"
								maxlength="9" required="true"
								requiredMessage="задължително поле!"
								readonly="#{!aktualiziraneNaAvtoserviz.rowSelected}"
								validatorMessage="ЕИК трябва да се състои от точно 9 цифри.">
								<f:validateRegex pattern="^[0-9]{9}$" />
							</h:inputText>
							<br/>
							<h:message for="regnumber" class="errorMsg" />
						</h:outputLabel></td>
					<td><h:commandButton value="Запази" class="regButton"
							style="width:80px;height:40px; margin-left: 80px;margin-top: 25px;"
							action="#{aktualiziraneNaAvtoserviz.saveAutoserviz()}"
							disabled="#{!aktualiziraneNaAvtoserviz.rowSelected or !aktualiziraneNaAvtoserviz.changingAllowed}" /></td>
				</tr>
			</table>
			<br />
		</h:form>
		<h:form>
			<table class="buttonTable">
				<!-- формата е разделена на две, за да не се проверяват данните
		при натискането на бутоните "Отмени" и "Добави" -->
				<tr>
					<td><h:commandButton
							action="#{aktualiziraneNaAvtoserviz.deselectRow()}"
							value="Отмени" class="regButton" style="width:80px;height:40px;"
							disabled="#{!aktualiziraneNaAvtoserviz.rowSelected}" /></td>
					<td><h:commandButton
							action="#{aktualiziraneNaAvtoserviz.goToAdd()}" value="Добави"
							class="regButton" style="width:80px;height:40px;"
							disabled="#{!aktualiziraneNaAvtoserviz.goToAddAllowed}" /></td>
				</tr>
			</table>
			<br />
			<h:outputText value="#{aktualiziraneNaAvtoserviz.errorMessage}" />
		</h:form>
	</ui:define>
</ui:composition>
</html>